The use of digital geographic or map data has become commonplace in today's modern, computerized society. Commonly referred to as electronic maps, digital maps, digitized maps, or simply as maps, this geographic or map data can be used in a wide variety of applications. A typical application is in the travel industry, whereby digital maps are used to quickly and automatically chart travel routes, and to locate destinations. Digital maps have found a particularly common everyday use in automobiles, wherein Global Positioning Systems (GPS) are used in association with a digital map to automatically track the position of a car and display the position on a map, for instance to guide the driver to a particular destination.
Digital maps are often also used in commercial environments, for example in calculating optimized routes for delivery drivers to take when performing deliveries, or for providing accurate directions for emergency and medical crews to follow when responding to emergency calls. For many years, the electronic map industry has also supplied maps to the military for use in military applications. Digital maps find a use in all aspects of industry, including for ground-based, maritime, and aviation purposes. As people become more familiar in carrying handheld electronic and Personal Digital Assistant (PDA) devices, increasingly distributed together with electronic maps stored therein, the electronic or digital map industry has grown to infiltrate every aspect of society.
One of the great benefits of a digital map over a traditional paper-based map is it's inherent flexibility and ability to portray large amounts of data. Paper maps are necessarily limited to the amount and type of information they can portray, within the constraints of their physical formats. Paper maps are obviously also difficult to update. Digital maps don't suffer from these problems. While earlier digital maps may have seemed merely like a scanned version of the paper product, today's modern digital maps are much more powerful. Objects can be included in the map and either displayed, or not displayed, depending on the wishes of the operator. The whole product can be quickly updated to reflect changes or corrections to all or just a small subset of map objects.
FIG. 1 shows a typical example of how a digital map is used by a software application to provide map and direction information to an operator. As shown in FIG. 1, a computer screen 100 under control of the operator or user can be used to display a graphical window 102, and thereon a digital version of the map 104, i.e. a digital map. The operator may select any object or item within the map to find out information that item. A second window 106 can be used to provide map or object information. Information about the map and the items contained therein can be used to provide, for example, driving directions 108 to the operator from a first location to a second location. Digital maps now play an important role in everyday activities such as trip planning.
However, along with this increased usage and functionality or electronic maps, the need has arisen to insure that these electronic maps are provided in such a way that they are flexible enough to allow for changes in the geography or in the political use of the underlying geographical area. For example, in urban areas the location and usage of surface streets may change on a regular basis. Schools and other important public buildings can be built seemingly almost overnight. An electronic map that is several years old (or in some cases even several months old) is of lesser use in such an environment, because the image the map displays, and the information it provides, is no longer reliably related to the underlying geography. As such, electronic map vendors continuously seek new ways in which they can regularly update and check the accuracy of their electronic maps, and do so in an easy manner such that the map need not be created from scratch each time, but can instead be updated or derived from previous versions of the map to reflect the new geography. Such a process is akin to the debugging process familiar to software application developers who must strive to fix problems and errors in their underlying software code.
While the application software industry has developed many tools for debugging software applications, current methods of debugging electronic or digital maps are often tedious and labor intensive. Typically they require the operator to retrieve a text version of the map information, sift through large amounts of textual data defining the map items within the map, and then modify the entries therein to reflect changes in the map itself. Since an electronic map is usually defined by a series of entries wherein each entry indicates, for example, a street, a public building, or a park, etc., the operator can modify the location and/or the properties of this entry by making edits to the text entry for that record.
The problems associated with these traditional methods of maintaining and updating electronic map information are that they are time consuming, and sometimes result in inaccuracies. The operator must be highly proficient in editing that particular map format. In addition, the person editing the textual record for a particular map entity may not be able to actually view the map on their screen. Instead they usually work from a text-only list that has been prepared by somebody else who previously inspected the visual map display, noted any errors, and created a Quality Assurance (QA) list. The overall result of this is that electronic maps created and updated using traditional methods are relatively inflexible and pose a barrier which discourages map vendors from updating their maps on a regular basis.
In some other instances the process of updating is often an impossible task, in that the object or item reflected in the map is not easily identified within the text version of the map. This may be the case for example when a map object has information associated with it that is used by the system in some way, but may not be visible to the end user. In these instances a visual inspection of the map yields little useful debugging information. One example of this type of map object is special street closing information, or street-by-street rush-hour information that defines how the street varies with rush-hour. Unless the map tester uses this actual information for some purpose they may not see  it during the QA process. If they don't see it, then they may not check it for accuracy.
Map vendors may often like to approach the debug process from a visual means in that the person debugging the map can see it at the same time. This alleviates the tedium and potential inaccuracy in debugging map information by dealing purely with large text files. In some applications, the digital map vendor or debugger can identify an object by pointing or clicking on the map itself and by entering any modified attributes for the record therein. However, this procedure does not work for those objects described above that are hidden within the map view, for example these properties associated with particular public buildings such as opening times, etc. Modifying entries such as these for items that are otherwise hidden poses particular problems for the map editor. In addition, to date there has been little effort to combine the power of graphical presentation and text entry into one common application, such that an operator can have the best of both worlds. Simply put, an easier and more accurate map viewer, editor, and debugger would mean more accurate maps, and ensure that map vendors and customers can keep pace with the ever-increasing demands for reliable, accurate, and readily updated map information.